Saltar al contenido principal

Extracción de Información Estructurada de Documentos Semiestructurados

Plataforma: Ubuntu 20 Tipo: Proyecto Cerrado Fecha: 2023 Enlace: No disponible


Resumen​

Este proyecto tuvo como objetivo desarrollar una plataforma genérica capaz de extraer información estructurada desde documentos semiestructurados utilizando técnicas de inteligencia artificial, OCR y análisis de layout.

La iniciativa surgió tras varios proyectos exitosos de procesamiento documental, donde cada solución estaba diseñada para un conjunto específico de documentos. El desafío consistía en construir una solución más flexible, capaz de adaptarse a formularios, contratos, solicitudes, declaraciones y otros documentos con estructuras variables.

La visión era avanzar hacia una alternativa especializada para automatización documental, explorando capacidades similares a las ofrecidas por plataformas líderes del mercado de aquella época.


Referencias Visuales​

La siguiente imagen ilustra conceptualmente el tipo de análisis realizado sobre documentos semiestructurados.

Layout Parser


Contexto​

En muchos procesos empresariales la información no se encuentra almacenada en bases de datos estructuradas, sino distribuida dentro de documentos.

Aunque los documentos suelen contener información organizada visualmente, dicha estructura no siempre puede interpretarse fácilmente mediante OCR tradicional.

El desafío consistía en responder preguntas como:

  • ¿Cuál es el nombre del cliente?
  • ¿Cuál es el número de identificación?
  • ¿Qué valor corresponde a determinado campo?
  • ¿Qué información pertenece a una tabla?
  • ¿Cuál es la relación entre una etiqueta y su valor?

Resolver estas preguntas de forma genérica requería comprender tanto el texto como la estructura visual del documento.


Problema​

Los sistemas tradicionales de OCR permiten leer texto, pero no necesariamente comprender la relación entre los distintos elementos de una página.

Por ejemplo:

Nombre:
Juan Pérez

Dirección:
Av. Principal 123

Un OCR convencional puede reconocer todas las palabras, pero identificar correctamente qué valor corresponde a cada campo requiere comprender la estructura del documento.

El objetivo del proyecto era construir una solución capaz de interpretar estas relaciones de manera automática.


Arquitectura General​


Solución​

La solución combinó múltiples modelos especializados que trabajaban sobre distintas capas de información.

OCR​

La primera etapa consistía en obtener el texto y la ubicación espacial de cada elemento presente en el documento.

Comprensión de Layout​

Posteriormente se utilizaban modelos especializados para interpretar la estructura visual del documento.

Se trabajó principalmente con:

  • LayoutLMv3.
  • RapidTable.
  • Modelos internos especializados.

Estos modelos permitían analizar simultáneamente:

  • Texto.
  • Posición.
  • Agrupaciones visuales.
  • Relaciones espaciales.

Extracción de Tablas​

Una de las capacidades incorporadas durante el proyecto fue la extracción de tablas.

Esto permitió ampliar significativamente los escenarios de uso y abordar documentos más complejos.

Generación de Datos Estructurados​

Finalmente se intentaba transformar la información obtenida en estructuras reutilizables para otros sistemas.


Mi Participación​

Participé como líder técnico del proyecto.

Mis responsabilidades incluyeron:

  • Diseño de la arquitectura.
  • Evaluación tecnológica.
  • Selección de modelos.
  • Coordinación del equipo.
  • Supervisión de experimentación.
  • Definición de métricas.
  • Presentación del producto a potenciales clientes.

También participé activamente en la validación de resultados y en la definición de estrategias para relacionar preguntas y respuestas dentro de los documentos.


Infraestructura​

La solución fue diseñada utilizando servicios serverless y contenedores desplegados sobre Amazon Web Services (AWS).

Esto permitió construir una arquitectura escalable y orientada a procesamiento bajo demanda.


Desafíos Técnicos​

Comprensión de Relaciones​

Uno de los mayores desafíos fue identificar correctamente la relación entre campos y valores.

Por ejemplo:

Nombre: Juan Pérez
RUT: 12.345.678-9

La extracción de texto era relativamente sencilla.

Determinar que "Juan Pérez" corresponde al campo "Nombre" y que el RUT pertenece a otro campo resultó ser un problema considerablemente más complejo.

Dependencia del Posicionamiento​

Gran parte de la estrategia se apoyaba en relaciones espaciales y análisis geométrico del documento.

Si bien este enfoque entregó resultados prometedores, también mostró limitaciones cuando los documentos variaban significativamente de diseño.

Variabilidad Documental​

Cada cliente, industria o formulario presentaba estructuras distintas.

La diversidad de layouts aumentaba considerablemente la complejidad del problema.


Tecnologías Utilizadas​

  • Python
  • LayoutLMv3
  • RapidTable
  • OCR
  • AWS
  • Arquitecturas Serverless
  • Docker
  • Procesamiento Documental
  • Computer Vision

Resultados​

El proyecto logró:

  • Extraer campos estructurados desde múltiples tipos documentales.
  • Analizar layouts complejos.
  • Extraer tablas automáticamente.
  • Validar arquitecturas escalables para procesamiento documental.
  • Generar demostraciones funcionales para potenciales clientes.

Además, permitió identificar con claridad los desafíos técnicos asociados a la comprensión documental avanzada.


Lo que Aprendí​

Este proyecto dejó uno de los aprendizajes más importantes de mi experiencia profesional en procesamiento documental.

La extracción de texto y la comprensión de estructura son problemas diferentes.

Mientras que el OCR y los modelos de layout pueden identificar dónde está la información, comprender correctamente las relaciones semánticas entre preguntas y respuestas requiere mecanismos adicionales de interpretación.

Años después, la aparición y masificación de los modelos de lenguaje confirmó muchas de las limitaciones observadas durante este proyecto, especialmente en escenarios donde la comprensión contextual resulta más importante que la posición física de los elementos dentro del documento.


Viéndolo en Retrospectiva​

Aunque el proyecto no evolucionó hacia un producto comercial, considero que fue una experiencia extremadamente valiosa desde el punto de vista técnico.

Permitió explorar los límites de las tecnologías documentales disponibles en ese momento y comprender con mayor profundidad la diferencia entre leer un documento y comprenderlo.

Muchas de las lecciones aprendidas en esta iniciativa terminarían siendo aplicadas posteriormente en proyectos de OCR avanzado, extracción documental especializada y soluciones basadas en modelos de lenguaje.


Información Adicional​

La imagen utilizada corresponde a una representación conceptual del análisis de layout documental y se incluye únicamente con fines ilustrativos.